In some conventional enterprise systems, data storage, processing and analysis capabilities of various tasks have been migrating to cloud infrastructures. Cloud infrastructures typically comprise computing resources that are immobile and placed at a set of fixed locations. However, for certain organizations such as government agencies (e.g. military) and security services companies, there is a requirement for their personnel (or mobile users) to operate in austere and remote environments. More specifically, the personnel on the ground should have adequate storage, processing and analysis capabilities in the austere and the remote environments in order to be able to execute various tasks in such environments. Accordingly, the personnel on the ground are provided with mobile computing devices (referred to as remote client devices) with requisite hardware capabilities along with one or more databases and application programs. Such remote client devices may operate independently of an associated rear echelon cloud infrastructure (or “master cloud”), however, periodic or continuous synchronization may be required such that the databases and application programs in the remote client devices are up to date. Furthermore, local updates within the remote client devices may have to be uploaded to the rear echelon cloud infrastructure (or “master cloud”).
Typically, a communication link is established between cloud infrastructures hosted by an enterprise system of an organization located in a fixed location (for example, in U.S.) and remote client devices used by mobile users of the organization in remote environments in order to synchronize data of the cloud infrastructures and the remote client devices. However, when the communication link is spotty or intermittent as is often the case in an austere and remote environment, data synchronization between the cloud infrastructures of the enterprise system and the remote client devices becomes problematic. Currently, there is no technique available to position, cache, and synchronize data between the cloud infrastructures hosted by the enterprise system of an organization at a fixed location and remote client devices used by mobile users in an austere and remote location. In other words, current techniques cannot effectively handle synchronization between a rear echelon cloud infrastructure and a remote client device using a low quality and unreliable communication network.